package logica.interfaces;

import logica.exceptions.RequiredDataException;

/**
 * 
 * Interface que encapsula o comportamento das categorias.
 *
 */
public interface CategoryIF {

	/**
	 * metodo que retorna o Id da categoria.
	 * 
	 * @return
	 * 			Id da categoria.
	 */
	public String getId();

	/**
	 * metodo que retorna o Nome da categoria.
	 * 
	 * @return
	 * 			Nome da categoria.
	 */
	public String getName();

	/**
	 * metodo que seta o Id da categoria.
	 *  
	 * @param id
	 * 			Id a ser setado.
	 * @throws RequiredDataException
	 * 			excessao gerada caso o dado requerido nao seja fornecido.
	 */
	public void setId(String id) throws RequiredDataException;

	/**
	 * metodo que seta o Nome da categoria.
	 * 
	 * @param name
	 * 			Nome a ser setado.
	 * @throws RequiredDataException
	 * 			excessao gerada caso o dado requerido nao seja fornecido.
	 */
	public void setName(String name) throws RequiredDataException;

}
